A two-tier client/server system is defined as a client/server environment with a two-way interaction in which the user interface is on the client side and the data resides in the server. The application processing logic can be in either the client or the server. In a thin client/fat server system, the application logic is always stored in the server.
A three-tier client/server system is a three-way interaction in a client/server environment in which the user interface resides in the client, the bulk of the business application logic resides in one or more servers, and the data is housed in a database server.
A “thin processing” client, or thin client, is the client side of a client/server environment that performs very little data processing. The client processes only the input/output operations, with all application processing handled by the server.
The ultimate thin client application is based on the concept of a using a browser on the client side of a client/server system through which the client can run server hosted applications without requiring any additional software on the client machine. In essence this means that the complexities of the underlying application are served by the browser without the need of going beyond the software boundaries of what the browser offers on the client machine.
Spreadsheet applications are increasingly important in today's business environment. In order to serve the increasing number of spreadsheet applications tools, programs such as Microsoft's Excel™ have become more complex. An occasional spreadsheet user may have little or no need for the many enhanced features of spreadsheet programs such as these and hence may not want to own a spreadsheet program or to periodically upgrade the program. For these users and for thin clients in particular, it is preferable to access and use a spreadsheet program through their web browser without the necessity of carrying the spreadsheet application on their system. Therefore it is desirable to provide a method and system for remote access and utilization of spreadsheet programs, especially for thin clients.
There are a number of approaches that attempt to provide similar functionality. These include:
The Microsoft Excel 97™ Viewer allows users to view and print Excel 97 and Excel 2000™ spreadsheet files, in addition to other Excel™ for Windows™ spreadsheet files. This viewer gives users the flexibility to view page layout, copy and control cell sizes, and access the zoom and AutoFilter features. However, Microsoft Excel 97 Viewer is only used for viewing static Excel™ spreadsheets; therefore it offers no data binding or write/update capabilities. Special custom coding and programming per application would be required to enable full data binding/read/write capabilities.
Microsoft Excel™ offers a web plug-in component which requires licensing from Microsoft which would make it possible to have full Excel functionality in Microsoft Internet Explorer™ and potentially Netscape™ browsers. The drawback is that it does require the client side to have a license for Microsoft Office™ and to have Microsoft Excel installed.
Sun Microsystems ONE WebTop™ based related technologies make it possible for StarOffice™ spreadsheet applications to be available as a web service over the Internet/Intranet. StarOffice is Sun's spreadsheet application program which also works with Microsoft Excel spreadsheet files. Therefore, utilizing ONE WebTop technology in conjunction with StarOffice facilitates the internet/intranet browser deployment of Microsoft Excel spreadsheets. The client side, however, must have Sun's Java®, hence the solution is not a pure HTML (HyperText Markup Language) browser-based approach.
Tarantella Enterprise 3™ is a server based product which allows users to run any application on a server and access it via the client browser. Tarantella Enterprise 3 software combined with Sun ONE Portal Server and the Sun ONE infrastructure allows users a personalized view for the delivery and aggregation of traditional and Web-based applications into a seamless solution. This solution offers integrated access to Microsoft Windows, Web based, Java, mainframe, AS/400, Linux and UNIX applications. All existing applications are utilized and can be delivered through the portal without rewriting the code, touching the infrastructure or changing the architecture. For example, users can install Microsoft Excel on a machine acting as a server with Enterprise 3 and then have Microsoft Excel running in a virtual manner in a web browser via Tarantella's Enterprise 3 product. This solution, however, relies heavily on Java Applet-related technologies that are expected to exist on the client side, and hence does not provide a pure HTML browser solution.
XHTML (eXtensible HTML) is a freeware tool that transforms an Excel spreadsheet into HTML. It is similar to Excel's own feature of saving the underlying spreadsheet as a static HTML page. The solution is static (i.e., it does not provide the means for generating HTML pages dynamically to provide data binding, read/write capabilities), or providing the means to execute the formulas, and scripts that constitute the underlying spreadsheet application. In short it is identical to using Microsoft Excel's “Save as Web Page” feature that stores the underlying application as a static HTML page.
There are several Java and DHTML (dynamic HTML) based spreadsheets that can be integrated in a web browser, including a product called “yCode” which offers a dynamic HTML based spreadsheet. However, it uses Microsoft Internet Explorer proprietary DHTML technology. It also does not provide the full feature set of a traditional spreadsheet such as dynamic generation of graphics and charts, cell formatting, etc.
Therefore, for these and other reasons, there is a need for a product which overcomes the shortcomings of the prior art.